#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <BImage>
#include <BButton>
#include <BFileDialog>
#include <BLineEdit>
#include <BListWidget>
#include <BTabWidget>
#include <BMainWindow>

using namespace BWE;

class MainWindow : public BMainWindow
{
public:
	MainWindow();
	~MainWindow();

protected:
	void procFreshHeads();
	void procSaveDocument();

	void procIncludePathEditDoubleClicked();
	void procDocumentPathEditDoubleClicked();
	void procIncludeHeadFileDoubleClicked(BObject* object, const BValue& value);

protected:
	void freshHeads();

protected:
	virtual void updateEvent(const BEvent& event);

private:
	BButton*			_freshButton;
	BButton*			_saveButton;
	BButton*			_saveAllButton;
	BLineEdit*			_includePathEdit;
	BLineEdit*			_documentPathEdit;

	BListWidget*		_headList;
	BTabWidget*			_tabWidget;

	BFileDialog*		_fileDialog;

	BFolder				_includeFolder;
	BFolder				_documentFolder;

	BImageHolder		_normalImage;
	BImageHolder		_changeImage;
	BImageHolder		_emptyImage;
};

#endif